﻿// --------------------------------------------------------------------------------------------------------------------
// <copyright file="IActiveAware.cs" company="Concept Architecture">
//   (c) 2010 Muhammad Umer Farooq
// </copyright>
// <summary>
//   Allows an object to provide information about whether it is active or not.
// </summary>
// --------------------------------------------------------------------------------------------------------------------

namespace Hisaab.Windows.Common
{
    using System;

    /// <summary>
    /// Allows an object to provide information about whether it is active or not.
    /// </summary>
    public interface IActiveAware
    {
        /// <summary>
        /// Occurs whenever the <see cref="IsActive"/> property has changed.
        /// </summary>
        event EventHandler<EventArgs> IsActiveChanged;

        /// <summary>
        /// Gets a value indicating whether this object is active.
        /// </summary>
        bool IsActive { get; }
    }
}